//题目：一个数如果恰好等于它的因子之和，这个数就称为"完数"。例如6=1＋2＋3.编程找出1000以内的所有完数。
int main()
{
        int arr[300];
        for (int n = 2; n <= 1000; n++)
        {
               arr[0] = 1;
               int k =  0;
               int tmp = n;
               int sum = 1;
               for (int i = 2; i < tmp; i++)
               {
                       if (0 == tmp % i)
                       {
                              sum = sum + i;
                              arr[++k] = i;
                       }
               }
               if (n == sum)
               {
                       printf("%d=%d", n, arr[0]);
                       for (int i = 1; i <= k; i++)
                       {
                              printf("+%d", arr[i]);
                       }
                       printf("\n");
               }       
        }
        return 0;
}

